package com.link.base.base.projectmanage.model;

import com.link.base.ext.emp.model.ExtEmployee;
import com.link.core.basic.model.BasicModel;

import java.util.ArrayList;
import java.util.List;

/**
 * 车型登记-
 *
 * @author 刘启鑫
 * @date 2020/09/11 15:21
 */
public class CarRegister extends BasicModel {

    /**车型登记号*/
    private String carRegisterCode;
    /**客户ID*/
    private Long accntId;
    /**终端主机厂,值列表类型: LNK_HOST_PLANT */
    private String endAccntRoot;
    /**客户名称*/
    private String accntName;
    /**客户状态*/
    private String acctStatus;
    /**
     * 客户等级
     */
    private String acctLevel;

    /**车类,值列表类型: LNK_CARS */
    private String carClass;
    /**车型,值列表类型: LNK_MODELS */
    private String carType;
    /**车型等级,值列表类型: LNK_MODEL_GRADE */
    private String carTypeLevel;
    /**预计总寿命（年）*/
    private String estLife;
    /**预计年产量（台）*/
    private String estYearOutput;
    /**预计总产量（台）*/
    private String estTotalOutput;
    /**打折系数*/
    private Double discountRate;
    /**预估价（元）*/
    private Double estPrice;
    /**预计年产值（万）*/
    private Double estYearOutputVal;
    /**预计总产值（万）*/
    private Double estTotalOutputVal;
    /**折后年产量（台）*/
    private Double disYearOutput;
    /**折后总产量（台）*/
    private Double disTotalOutput;
    /**折后年产值（万）*/
    private Double disYearOutputVal;
    /**折后总产值（万）*/
    private Double disTotalOutputVal;
    /**预计发包时间*/
    private String estSendPackTime;
    /**预计定点时间*/
    private String estFixedTime;
    /**备注*/
    private String comments;
    /**发生类型,值列表类型: LNK_OCCURRENCE_TYPE */
    private String occrType;
    /**单据状态,值列表类型: LNK_DOCUMENT_STATUS */
    private String formStatus;

    /**
     * 业务经理ID
     */
    private String busManagerId;
    /**
     * 业务经理名称
     */
    private String busManagerName;
    /**
     *  对标车型
     */
    private String benchmarkModel;
    /**
     *  生产工厂ID
     */
    private Long factoryId;
    /**
     *  生产工厂
     */
    private String factory;
    /**
     *  预计量产开始时间
     */
    private String expBatchProdStart;
    /**
     *  预计量产结束时间
     */
    private String expBatchProdEnd;
    /**
     *  定点可能性 （车型登记 已弃用）
     */
    private String fixedPointPossi;
    /**
     *  是否为重点车型
     */
    private String isKeyModel;
    /**
     *  终端主机厂ID
     */
    private Long engineeId;


    /**
     * 业务经理
     */
    private List<ExtEmployee> busManagers = new ArrayList<>();

    /**
     * 业务经理中间表数据，删除用
     */
    private List<CarRegBusManagerInter> carRegBusManagerInters = new ArrayList<>();

    /**
     * 零件登记
     */
    private List<PartRegister> partRegisters = new ArrayList<>();

    /**
     * 业务经理id（从客户带出）
     */
    private Long salesmanId;
    /**
     * 区域经理名称
     */
    private String areamanName;
    /**
     * 客户编码
     */
    private String acctCode;
    /**
     *  信用等级
     */
    private String creditLevel;
    /**
     * 客户简称
     */
    private String simName;
    /**
     * 是否为终端主机厂
     */
    private String engineeFlag;
    /**
     * 公司类型
     */
    private String econKind;
    /**
     * 客户分组
     */
    private String acctGroup;
    /**
     * app整合-sfa/dms 字段客户类别
     */
    private String acctCategory;
    /**
     *  客户所属区域
     */
    private String area;
    /**
     * 父客户姓名
     */
    private String parentAgencyName;
    /**
     *  预计可参与零件类别
     */
    private String estPartType;
    /**
     *  预估价（元）
     */
    private Double partEstPrice;
    /**
     *  预计占比（%）
     */
    private Double estRatio;

    /**
     *  定点可能性
     */
    private String partFixedPointPossi;
    /**
     *  当前阶段
     */
    private String currentStage;
    /**
     *  预计开始时间
     */
    private String estStartDate;
    /**
     *  预计结束时间
     */
    private String estEndDate;
    /**
     *  对象级别
     */
    private String objectLevel;
    /**
     *  拜访目的
     */
    private String visitGoal;
    /**
     *  拜访方式
     */
    private String visitWay;
    /**
     *  实际开始时间
     */
    private String actStartDate;
    /**
     *  实际结束时间
     */
    private String actEndDate;
    /**
     *  工作描述
     */
    private String workDesc;
    /**
     *  备注
     */
    private String taskComments;

    /**
     *  零件预计年产值（万）
     */
    private Double estPartYearOutputVal;
    /**
     *  零件折后年产值（万）
     */
    private Double disPartYearOutputVal;

    public Double getEstPartYearOutputVal() {
        return estPartYearOutputVal;
    }

    public void setEstPartYearOutputVal(Double estPartYearOutputVal) {
        this.estPartYearOutputVal = estPartYearOutputVal;
    }

    public Double getDisPartYearOutputVal() {
        return disPartYearOutputVal;
    }

    public void setDisPartYearOutputVal(Double disPartYearOutputVal) {
        this.disPartYearOutputVal = disPartYearOutputVal;
    }

    public String getAcctCode() {
        return acctCode;
    }

    public void setAcctCode(String acctCode) {
        this.acctCode = acctCode;
    }

    public String getCreditLevel() {
        return creditLevel;
    }

    public void setCreditLevel(String creditLevel) {
        this.creditLevel = creditLevel;
    }

    public String getSimName() {
        return simName;
    }

    public void setSimName(String simName) {
        this.simName = simName;
    }

    public String getEngineeFlag() {
        return engineeFlag;
    }

    public void setEngineeFlag(String engineeFlag) {
        this.engineeFlag = engineeFlag;
    }

    public String getEconKind() {
        return econKind;
    }

    public void setEconKind(String econKind) {
        this.econKind = econKind;
    }

    public String getAcctGroup() {
        return acctGroup;
    }

    public void setAcctGroup(String acctGroup) {
        this.acctGroup = acctGroup;
    }

    public String getAcctCategory() {
        return acctCategory;
    }

    public void setAcctCategory(String acctCategory) {
        this.acctCategory = acctCategory;
    }

    public String getArea() {
        return area;
    }

    public void setArea(String area) {
        this.area = area;
    }

    public String getParentAgencyName() {
        return parentAgencyName;
    }

    public void setParentAgencyName(String parentAgencyName) {
        this.parentAgencyName = parentAgencyName;
    }

    public String getEstPartType() {
        return estPartType;
    }

    public void setEstPartType(String estPartType) {
        this.estPartType = estPartType;
    }

    public Double getPartEstPrice() {
        return partEstPrice;
    }

    public void setPartEstPrice(Double partEstPrice) {
        this.partEstPrice = partEstPrice;
    }

    public Double getEstRatio() {
        return estRatio;
    }

    public void setEstRatio(Double estRatio) {
        this.estRatio = estRatio;
    }

    public String getPartFixedPointPossi() {
        return partFixedPointPossi;
    }

    public void setPartFixedPointPossi(String partFixedPointPossi) {
        this.partFixedPointPossi = partFixedPointPossi;
    }

    public String getCurrentStage() {
        return currentStage;
    }

    public void setCurrentStage(String currentStage) {
        this.currentStage = currentStage;
    }

    public String getEstStartDate() {
        return estStartDate;
    }

    public void setEstStartDate(String estStartDate) {
        this.estStartDate = estStartDate;
    }

    public String getEstEndDate() {
        return estEndDate;
    }

    public void setEstEndDate(String estEndDate) {
        this.estEndDate = estEndDate;
    }

    public String getObjectLevel() {
        return objectLevel;
    }

    public void setObjectLevel(String objectLevel) {
        this.objectLevel = objectLevel;
    }

    public String getVisitGoal() {
        return visitGoal;
    }

    public void setVisitGoal(String visitGoal) {
        this.visitGoal = visitGoal;
    }

    public String getVisitWay() {
        return visitWay;
    }

    public void setVisitWay(String visitWay) {
        this.visitWay = visitWay;
    }

    public String getActStartDate() {
        return actStartDate;
    }

    public void setActStartDate(String actStartDate) {
        this.actStartDate = actStartDate;
    }

    public String getActEndDate() {
        return actEndDate;
    }

    public void setActEndDate(String actEndDate) {
        this.actEndDate = actEndDate;
    }

    public String getWorkDesc() {
        return workDesc;
    }

    public void setWorkDesc(String workDesc) {
        this.workDesc = workDesc;
    }

    public String getTaskComments() {
        return taskComments;
    }

    public void setTaskComments(String taskComments) {
        this.taskComments = taskComments;
    }

    public String getAreamanName() {
        return areamanName;
    }

    public void setAreamanName(String areamanName) {
        this.areamanName = areamanName;
    }

    public Long getSalesmanId() {
        return salesmanId;
    }

    public void setSalesmanId(Long salesmanId) {
        this.salesmanId = salesmanId;
    }

    public String getAcctStatus() {
        return acctStatus;
    }

    public void setAcctStatus(String acctStatus) {
        this.acctStatus = acctStatus;
    }

    public List<CarRegBusManagerInter> getCarRegBusManagerInters() {
        return carRegBusManagerInters;
    }

    public CarRegister setCarRegBusManagerInters(List<CarRegBusManagerInter> carRegBusManagerInters) {
        this.carRegBusManagerInters = carRegBusManagerInters;
        return this;
    }

    public String getBusManagerName() {
        return busManagerName;
    }

    public CarRegister setBusManagerName(String busManagerName) {
        this.busManagerName = busManagerName;
        return this;
    }

    public List<PartRegister> getPartRegisters() {
        return partRegisters;
    }

    public CarRegister setPartRegisters(List<PartRegister> partRegisters) {
        this.partRegisters = partRegisters;
        return this;
    }

    public String getBusManagerId() {
        return busManagerId;
    }

    public CarRegister setBusManagerId(String busManagerId) {
        this.busManagerId = busManagerId;
        return this;
    }

    public List<ExtEmployee> getBusManagers() {
        return busManagers;
    }

    public CarRegister setBusManagers(List<ExtEmployee> busManagers) {
        this.busManagers = busManagers;
        return this;
    }

    public String getCarRegisterCode() {
        return carRegisterCode;
    }

    public void setCarRegisterCode(String carRegisterCode) {
        this.carRegisterCode = carRegisterCode;
    }

    public Long getAccntId() {
        return accntId;
    }

    public void setAccntId(Long accntId) {
        this.accntId = accntId;
    }

    public String getEndAccntRoot() {
        return endAccntRoot;
    }

    public void setEndAccntRoot(String endAccntRoot) {
        this.endAccntRoot = endAccntRoot;
    }

    public String getAccntName() {
        return accntName;
    }

    public void setAccntName(String accntName) {
        this.accntName = accntName;
    }

    public String getCarClass() {
        return carClass;
    }

    public void setCarClass(String carClass) {
        this.carClass = carClass;
    }

    public String getCarType() {
        return carType;
    }

    public void setCarType(String carType) {
        this.carType = carType;
    }

    public String getCarTypeLevel() {
        return carTypeLevel;
    }

    public void setCarTypeLevel(String carTypeLevel) {
        this.carTypeLevel = carTypeLevel;
    }

    public String getEstLife() {
        return estLife;
    }

    public void setEstLife(String estLife) {
        this.estLife = estLife;
    }

    public String getEstYearOutput() {
        return estYearOutput;
    }

    public void setEstYearOutput(String estYearOutput) {
        this.estYearOutput = estYearOutput;
    }

    public String getEstTotalOutput() {
        return estTotalOutput;
    }

    public void setEstTotalOutput(String estTotalOutput) {
        this.estTotalOutput = estTotalOutput;
    }

    public Double getDiscountRate() {
        return discountRate;
    }

    public void setDiscountRate(Double discountRate) {
        this.discountRate = discountRate;
    }

    public Double getEstPrice() {
        return estPrice;
    }

    public void setEstPrice(Double estPrice) {
        this.estPrice = estPrice;
    }

    public Double getEstYearOutputVal() {
        return estYearOutputVal;
    }

    public void setEstYearOutputVal(Double estYearOutputVal) {
        this.estYearOutputVal = estYearOutputVal;
    }

    public Double getEstTotalOutputVal() {
        return estTotalOutputVal;
    }

    public void setEstTotalOutputVal(Double estTotalOutputVal) {
        this.estTotalOutputVal = estTotalOutputVal;
    }

    public Double getDisYearOutput() {
        return disYearOutput;
    }

    public void setDisYearOutput(Double disYearOutput) {
        this.disYearOutput = disYearOutput;
    }

    public Double getDisTotalOutput() {
        return disTotalOutput;
    }

    public void setDisTotalOutput(Double disTotalOutput) {
        this.disTotalOutput = disTotalOutput;
    }

    public Double getDisYearOutputVal() {
        return disYearOutputVal;
    }

    public void setDisYearOutputVal(Double disYearOutputVal) {
        this.disYearOutputVal = disYearOutputVal;
    }

    public Double getDisTotalOutputVal() {
        return disTotalOutputVal;
    }

    public void setDisTotalOutputVal(Double disTotalOutputVal) {
        this.disTotalOutputVal = disTotalOutputVal;
    }

    public String getEstSendPackTime() {
        return estSendPackTime;
    }

    public void setEstSendPackTime(String estSendPackTime) {
        this.estSendPackTime = estSendPackTime;
    }

    public String getEstFixedTime() {
        return estFixedTime;
    }

    public void setEstFixedTime(String estFixedTime) {
        this.estFixedTime = estFixedTime;
    }

    public String getComments() {
        return comments;
    }

    public void setComments(String comments) {
        this.comments = comments;
    }

    public String getOccrType() {
        return occrType;
    }

    public void setOccrType(String occrType) {
        this.occrType = occrType;
    }

    public String getFormStatus() {
        return formStatus;
    }

    public void setFormStatus(String formStatus) {
        this.formStatus = formStatus;
    }

    public String getBenchmarkModel() {
        return benchmarkModel;
    }

    public void setBenchmarkModel(String benchmarkModel) {
        this.benchmarkModel = benchmarkModel;
    }

    public Long getFactoryId() {
        return factoryId;
    }

    public void setFactoryId(Long factoryId) {
        this.factoryId = factoryId;
    }

    public String getFactory() {
        return factory;
    }

    public void setFactory(String factory) {
        this.factory = factory;
    }

    public String getExpBatchProdStart() {
        return expBatchProdStart;
    }

    public void setExpBatchProdStart(String expBatchProdStart) {
        this.expBatchProdStart = expBatchProdStart;
    }

    public String getExpBatchProdEnd() {
        return expBatchProdEnd;
    }

    public void setExpBatchProdEnd(String expBatchProdEnd) {
        this.expBatchProdEnd = expBatchProdEnd;
    }

    public String getFixedPointPossi() {
        return fixedPointPossi;
    }

    public void setFixedPointPossi(String fixedPointPossi) {
        this.fixedPointPossi = fixedPointPossi;
    }

    public String getAcctLevel() {
        return acctLevel;
    }

    public void setAcctLevel(String acctLevel) {
        this.acctLevel = acctLevel;
    }

    public String getIsKeyModel() {
        return isKeyModel;
    }

    public void setIsKeyModel(String isKeyModel) {
        this.isKeyModel = isKeyModel;
    }

    public Long getEngineeId() {
        return engineeId;
    }

    public void setEngineeId(Long engineeId) {
        this.engineeId = engineeId;
    }
}
